// 导入koka
const Router = require('koa-router');

const Koa = require('koa');
const app = new Koa();
const bodyParser = require('koa-bodyparser'); // 解析post 参数

// 使用ctx.body解析中间件

// 导入 router

const router = new Router();

//配置路由
// todo ctx 上下文 context, request response信息




require('./router')(router); // todo 加载router.js中的路由，get,post传递


//
// get 方法参数 ,todo 方式一，
// 1.是从上下文中直接获取
// 请求对象ctx.query，返回如 { a:1, b:2 }
// 请求字符串 ctx.querystring，返回如 a=1&b=2
// 2.是从上下文的request对象中获取
// 请求对象ctx.request.query，返回如 { a:1, b:2 }
// 请求字符串 ctx.request.querystring，返回如 a=1&b=2

// todo 启动路由
app
    .use(bodyParser()) // todo 加载插件 ，解析post参数
    .use(router.routes())
    .use(router.allowedMethods())


// 欢迎信息
// let appName= "koa2"
// let appObject ={
//     appName, // todo 不需要在写 appNmae:appName
//     showAppName(){
//         return  appName
//     }
// };

// app.use( async (ctx)=>{
//     console.log(ctx)
//     ctx.body=`你好,${appObject.showAppName()}`
// });

app.listen(3000);
console.log('[demo] start-quick is starting at port 3000') // 打印到终端 而不是网页console